
ADAM's EOS Jump Table


     EOS FUNCTION                        JUMP TABLE ADDRESS    ABSOLUTE ADDRESS

  1: reset system                        64560 ( 48,252)       63538 ( 50,248)
  2: display character (no execute)      64563 ( 51,252)       63015 ( 39,246)
  3: initialize display character        64566 ( 54,252)       62940 (220,245)
  4: display character (with execute)    64569 ( 57,252)       62986 ( 10,246)
  5: programmed delay                    64572 ( 60,252)       63839 ( 95,249)
  6: check printer status                64575 ( 63,252)       62904 (184,245)
  7: check printer status                64578 ( 66,252)       62844 (124,245)
  8: check if read device block done     64581 ( 69,252)       64226 (226,250)
  9: check if read keyboard done         64584 ( 72,252)       64421 (165,251)
 10: get keyboard status                 64587 ( 75,252)       62688 (224,244)
 11: check status after write device     64590 ( 78,252)       64283 ( 27,251)
 12: check write status of printer       64593 ( 81,252)       64481 (225,251)
 13: find device control block           64596 ( 84,252)       62534 ( 70,244)
 14: find device control block           64599 ( 87,252)       62534 ( 70,244)
 15: find processor control block        64602 ( 90,252)       64076 ( 76,250)
 16: reset all devices                   64605 ( 93,252)       63734 (246,248)
 17: reset ADAMNet                       64608 ( 96,252)       63819 ( 75,249)
 18: send string to printer              64611 ( 99,252)       62741 ( 21,245)
 19: send character to printer           64614 (102,252)       62716 (252,244)
 20: read block from device              64617 (105,252)       64158 (158,250)
 21: read keyboard for character         64620 (108,252)       62650 (186,244)
 22: read keyboard return code           64623 (111,252)       64123 (123,250)
 23: read printer return code            64626 (114,252)       64127 (127,250)
 24: read device return code             64629 (117,252)       64135 (135,250)
 25: read tape return code               64632 (120,252)       64131 (131,250)
 26: relocate processor control block    64635 (123,252)       64047 ( 47,250)
 27: specified status request            64638 (126,252)       62579 (115,244)
 28: keyboard status request             64641 (129,252)       62667 (203,244)
 29: printer status request              64644 (132,252)       62930 (210,245)
 30: tape status request                 64647 (135,252)       62935 (215,245)
 31: scan active devices                 64650 (138,252)       63947 (203,249)
 32: initialize input/output processor   64653 (141,252)       63778 ( 34,249)
 33: reset specified device              64656 (144,252)       64093 ( 93,250)
 34: reset keyboard                      64659 (147,252)       64081 ( 81,250)
 35: reset printer                       64662 (150,252)       64085 ( 85,250)
 36: reset tape                          64665 (153,252)       64089 ( 89,250)
 37: start print string                  64668 (156,252)       62848 (128,245)
 38: start print character               64671 (159,252)       62829 (109,245)
 39: start read device block             64674 (162,252)       64198 (198,250)
 40: start read device byte              64677 (165,252)       64390 (134,251)
 41: start keyboard read                 64680 (168,252)       62672 (208,244)
 42: start write device block            64683 (171,252)       64255 (255,250)
 43: start write device byte             64686 (174,252)       64450 (194,251)
 44: synchronize clocks                  64689 (177,252)       63856 (112,249)
 45: write device block                  64692 (180,252)       64178 (178,250)
 46: write device byte                   64695 (183,252)       64373 (117,251)
 47: initialize file manager             64698 (186,252)       61162 (234,238)
 48: initialize device directory         64701 (189,252)       62243 ( 35,243)
 49: open file                           64704 (192,252)       59904 (  0,234)
 50: close file                          64707 (195,252)       60164 (  4,235)
 51: reset file                          64710 (198,252)       60268 (108,235)
 52: create directory entry              64713 (201,252)       59024 (144,230)
 53: find directory entry                64716 (204,252)       58907 ( 27,230)
 54: alter directory entry               64719 (207,252)       58961 ( 81,230)
 55: read data from file                 64722 (210,252)       60439 ( 23,236)
 56: write data to file                  64725 (213,252)       60815 (143,237)
 57: set data                            64728 (216,252)       61125 (197,238)
 58: get date                            64731 (219,252)       61140 (212,238)
 59: rename file                         64734 (222,252)       61711 ( 15,241)
 60: delete file                         64737 (225,252)       61774 ( 78,241)
 61: read device dependent status        64740 (228,252)       62600 (136,244)
 62: jump to word processor              64743 (231,252)       64148 (148,250)
 63: execute Z80 return code             64746 (234,252)       64157 (157,250)
 64: trim file size                      64749 (237,252)       62017 ( 65,242)
 65: check file control block            64752 (240,252)       61577 (137,240)
 66: read device block                   64755 (243,252)       61819 (123,241)
 67: write device block                  64758 (246,252)       61926 (230,241)
 68: check open mode                     64761 (249,252)       61657 (217,240)
 69: search for directory entry          64764 (252,252)       61195 ( 11,239)
 70: locate directory entry              64767 (255,252)       58904 ( 24,230)
 71: not implemented                     64770 (  2,253)       62530 ( 66,244)
 72: not implemented                     64773 (  5,253)       62530 ( 66,244)
 73: not implemented                     64776 (  8,253)       62530 ( 66,244)
 74: not implemented                     64779 ( 11,253)       62530 ( 66,244)
 75: not implemented                     64782 ( 14,253)       62530 ( 66,244)
 76: get in/out ports                    64785 ( 17,253)       57745 (145,225)
 77: bank switch memory                  64788 ( 20,253)       57733 (133,225)
 78: copy ASCII within VRAM              64791 ( 23,253)       57683 ( 83,225)
 79: write table to VRAM                 64794 ( 26,253)       57344 (  0,224)
 80: read table from VRAM                64797 ( 29,253)       57370 ( 26,224)
 81: send value to VDP register          64800 ( 32,253)       57396 ( 52,224)
 82: read value from VDP resister        64803 ( 35,253)       57423 ( 79,224)
 83: fill VRAM (repeat character)        64806 ( 38,253)       57433 ( 89,224)
 84: initialze VRAM table (auto calc)    64809 ( 41,253)       57446 (102,224)
 85: write table to VRAM                 64812 ( 44,253)       57545 (201,224)
 86: read table from VRAM                64815 ( 47,253)       57551 (207,224)
 87: calculate pattern offset            64818 ( 50,253)       57610 ( 10,225)
 88: calculate pattern position          64821 ( 53,253)       57641 ( 41,225)
 89: transfer ASCII from ROM to VRAM     64824 ( 56,253)       57673 ( 73,225)
 90: write sprite attribute table        64827 ( 59,253)       57797 (197,225)
 91: read game controllers               64830 ( 62,253)       57939 ( 83,226)
 92: update spinner                      64833 ( 65,253)       58020 (164,226)
 93: decrement low nibble                64836 ( 68,253)       58197 ( 85,227)
 94: decrement high nibble               64839 ( 71,253)       58207 ( 95,227)
 95: transpose high and low nibble       64842 ( 74,253)       58217 (105,227)
 96: add accumulator to HL pair          64845 ( 77,253)       58228 (116,227)
 97: initialize sound table              64848 ( 80,253)       58283 (171,227)
 98: turn all sound off                  64851 ( 83,253)       58321 (209,227)
 99: start tune by number                64854 ( 86,253)       58343 (231,227)
100: send note to sound chip             64857 ( 89,253)       58374 (  6,228)
101: end tune                            64860 ( 92,253)       58552 (184,228)
